# coding:utf-8
# str:

# s1 = str(123)  # 类型转换

# 首字母大写
# s = "alex wusir"
# s1 = s.capitalize()
# print(s1)

# 每个单词首字母大写
# s = "alex wusir"
# s1 = s.title()
# print(s1)

# 统计出现的次数
# s = "alex awusair"
# print(s.count("a"))

# 大小写转换
# s = "alex"
# print(s.swapcase())

# 查找
s = "alex taibai"
# print(s.find("c"))     # find 查找不到的时候返回 -1
# print(s.index("C"))    # index 查找不到就报错

# 找到所有a的下标
# for i in range(len(s)):
#     if s[i] == 'a':
#         print(i)

# list:
# li = list("815678234")   # 定义的方式
# print(li)

# 统计
# print(li.count("1"))

# 查看
# print(li.index("1"))

# 反转
# li.reverse()
# print(li)

# 排序
# li.sort()  # 升序
# li.sort(reverse=True)  # 降序
# print(li)

# tuple:

# tu = tuple("12345")
# 统计
# print(tu.count("3"))
# 查找
# print(tu.index("1"))

# dict:
# dic = dict(k=1,k1=123,k2="aa",k3=222,k4=1123123)   # 定义方式
# print dic
# dic.popitem()   #随机删除
# print(dic)

# 随机删除
# dic.popitem()
#python3.6版本 默认删除最后个键值对
#python3.5版本以前 随机删除
# print(dic)

# 批量创建字典
# dic = {}
# dic1 = dict.fromkeys("abcdef",[4,5,6])
# 第一个参数可迭代对象
# 第二个参数是每个键对应的值 -- 用的都是同一个内存地址
# dic1["a"].remove(5)
# print(dic1)

# set:
# s = set("1234")   # 定义方式
# print(s)

# 数据类型转换:
# str - int # 字符串中必须都是十进制的数,才能进行转换
# s = "abc"
# n = int(s)
# print(n,type(n))

# int - str
# n = 123
# s = str(n)
# print(s,type(s))

# str - list
# s = "123"
# li = list(s)
# print(li)

# 面试题:
# 把字符串转化成列表
# print(s.split())
# 把列表转换成字符串
# print(''.join(li))

# list - str
# li = ["12","3"]
# s = str(li)
# print(s,type(s))
# print(''.join(li))  #join 不能有数字

# list - tuple
# li = [1,2,3]
# tu = tuple(li)
# print(tu)

# tuple - list
# tu = (1,2,3)
# li = list(tu)
# print(li)

# set - list
# s = {12,3,4}
# print(list(s))

# list - set
# li = [1,2,3]
# s = set(li)
# print(s)

# 总结:
#     字符串 -- 数字:字符串中必须都是十进制的数字
#     数字 -- 字符串:直接转换
#     列表 -- 字符串:''.join() -- 可迭代的对象中不能出现数字
#     字符串 -- 列表:split
#     除字典外,容器数据类型之间可以直接相互转换

# 总结:
#     str,int,bool,list,tuple,dict,set

    # 有序:
    #     str,int,bool,list,tuple
    # 无序:
    #     dict,set
    # 可变:
    #     list,dict,set
    # 不可变:
    #     str,int,bool,tuple

    # 访问方式:
    #     直接访问:int,bool,set
    #     顺序访问:list,tuple,str
    #     通过键访问: dict

